﻿namespace FFF.Test.Application.PublicService.AppService.TreeGrid
{
    using System;
    using System.Collections.Generic;
    using System.IdentityModel.Tokens.Jwt;
    using System.IO;
    using System.Linq;
    using System.Linq.Expressions;
    using System.Reflection;
    using System.Security.Claims;
    using System.Text;
    using System.Threading.Tasks;
    using Abp.Application.Services;
    using Abp.Application.Services.Dto;
    using Abp.Auditing;
    using Abp.Domain.Uow;
    using Abp.EntityFrameworkCore;
    using Abp.Runtime.Security;
    using Abp.Web.Models;
    using AutoMapper.Configuration;
    using Microsoft.AspNetCore.Authentication.JwtBearer;
    using Microsoft.AspNetCore.Authorization;
    using Microsoft.AspNetCore.Mvc;
    using Microsoft.EntityFrameworkCore;
    using Microsoft.Extensions.Configuration;
    using Microsoft.IdentityModel.Tokens;
    using Newtonsoft.Json;
    using Newtonsoft.Json.Serialization;
    using FFF.Test.Application.AppServices;
    using FFF.Test.DataAccess.Framework;
    using FFF.Test.DataAccess.Framework.Configuration;
    using FFF.Test.Util.Configuration;
    using Ydm.Extensions;
    using Z.Expressions;

    /// <summary>
    /// session的使用
    /// </summary>
    public interface ITreeGridAppService : IApplicationService
    {
        /// <summary>
        /// 获取Gird的数据
        /// </summary>
        /// <param name="pid">父级id</param>
        /// <param name="viewName">视图的名称</param>
        /// <param name="nodeName">展示节点属性的名称</param>
        /// <returns>grid</returns>
        List<TreeGridOutDto> GetTreeGird(Guid? pid, string viewName, string nodeName);

        /// <summary>
        ///  获取所有的父级的id 以,分割
        /// </summary>
        /// <param name="id">父级id</param>
        /// <param name="viewName">视图的名称</param>
        /// <returns>父级的id以,分割</returns>
        string GetFatherIds(Guid id, string viewName);
    }
}